<?php
class ContactosController extends AppController{
	var $name = 'Contactos';
	var $components = array('Paginator');
	var $helpers = array('Html', 'Form');
	
	function index(){
		//$this->set('contactos', $this->Contacto->find('all'));	
		$this->paginate = array(
				'order' => 'Contacto.id',
				'conditions' => array('Contacto.Deleted' => 0),
				'prefix' => 'Contacto',
				'limit' => 10
		);
		
		$this->set('contactos', $this->Paginator->paginate($this->Contacto));
	}
	
	function add(){
		$paises = $this->Contacto->Paises->find('list', array('fields' => 'Paises.nombre', 'order' => 'Paises.id'));
		$this->set('paises', $paises);

		$regiones = $this->Contacto->Regiones->find('list', array('fields' => 'Regiones.nombre', 'order' => 'Regiones.id'));
		$this->set('regiones', $regiones);
		
		$localidades = $this->Contacto->Localidades->find('list', array('fields' => 'Localidades.nombre', 'order' => 'Localidades.id'));
		$this->set('localidades', $localidades);
		
		if(!empty($this->data)){
			
			$contacto = array();
			$this->Contacto->create();
			$this->Contacto->id = null;
			$contacto['Contacto']['nombres'] = $this->data['Contacto']['nombres'];
			$contacto['Contacto']['apellidos'] = $this->data['Contacto']['apellidos'];
			$contacto['Contacto']['telefono'] = $this->data['Contacto']['telefono'];
			$contacto['Contacto']['celular'] = $this->data['Contacto']['celular'];
			$contacto['Contacto']['email'] = $this->data['Contacto']['email'];
			$contacto['Contacto']['direccion'] = $this->data['Contacto']['direccion'];
			$contacto['Contacto']['empresa'] = $this->data['Contacto']['empresa'];
			$contacto['Contacto']['cargo'] = $this->data['Contacto']['cargo'];
			$contacto['Contacto']['paises_id'] = $this->data['Contacto']['paises_id'];
			$contacto['Contacto']['regiones_id'] = $this->data['Contacto']['regiones_id'];
			$contacto['Contacto']['localidades_id'] = $this->data['Contacto']['localidades_id'];
			
			if($this->Contacto->save($contacto)){
				$this->Session->setFlash('La contacto ha sido ingresada correctamemte.');
				$this->redirect(array('action' => 'index'), null, true);			
			} 
			else{
				$this->Session->setFlash('Contacto no ingresada. Pruebe de nuevo.');
			}
		}
	}

	function edit($id = null){
		$paises = $this->Contacto->Paises->find('list', array('fields' => 'Paises.nombre', 'order' => 'Paises.id'));
		$this->set('paises', $paises);

		$regiones = $this->Contacto->Regiones->find('list', array('fields' => 'Regiones.nombre', 'order' => 'Regiones.id'));
		$this->set('regiones', $regiones);
		
		$localidades = $this->Contacto->Localidades->find('list', array('fields' => 'Localidades.nombre', 'order' => 'Localidades.id'));
		$this->set('localidades', $localidades);
		$this->set('id', $id);
		
		if(!$id){
			$this->Session->setFlas('Contacto Invalida');
			$this->redirect(array('action'=>'index'), null, true);
		}
		
		if(empty($this->data)){
			$this->data = $this->Contacto->find('all', array('recursive' => 1, 'conditions' => array('Contacto.id' => $id)));	
			$this->data = $this->data['0'];
			//$this->data = $this->Contacto->find(array('id' => $id));	
		}
		else{
			$contacto = array();
			$this->Contacto->id = null;
			$contacto['Contacto']['id'] = $this->data['Contacto']['id'];
			$contacto['Contacto']['nombres'] = $this->data['Contacto']['nombres'];
			$contacto['Contacto']['apellidos'] = $this->data['Contacto']['apellidos'];
			$contacto['Contacto']['telefono'] = $this->data['Contacto']['telefono'];
			$contacto['Contacto']['celular'] = $this->data['Contacto']['celular'];
			$contacto['Contacto']['email'] = $this->data['Contacto']['email'];
			$contacto['Contacto']['direccion'] = $this->data['Contacto']['direccion'];
			$contacto['Contacto']['empresa'] = $this->data['Contacto']['empresa'];
			$contacto['Contacto']['cargo'] = $this->data['Contacto']['cargo'];
			$contacto['Contacto']['paises_id'] = $this->data['Contacto']['paises_id'];
			$contacto['Contacto']['regiones_id'] = $this->data['Contacto']['regiones_id'];
			$contacto['Contacto']['localidades_id'] = $this->data['Contacto']['localidades_id'];
			
			if($this->Contacto->save($contacto)){
				$this->Session->setFlash('El contacto ha sido editado');
				$this->redirect(array('action' => 'index'), null, true);
			}
			else{
				$this->Session->setFlash('El contacto no ha podido ser editado, intentelo de nuevo');
			}
		}
	}
	
	function delete($id = null){
		if(!$id){
			$this->Session->setFlash('id invalido para el Contacto');
			$this->redirect(array('action' => 'index'), null, true);
		}
		else{
			$contacto = array();
			$this->Contacto->id = null;
			$contacto['Contacto']['id'] = $id;
			$contacto['Contacto']['deleted'] = 1;
			if($this->Contacto->save($contacto)){
				$this->Session->setFlash('Contacto #' . $id . ' borrado');	
				$this->redirect(array('action' => 'index'), null, true);
			}
		}
	}
	
	function reporte(){
		$contactos = $this->Contacto->find('all', array('recursive' => 1, 'conditions' => array('Contacto.deleted' => 0)));	
		
		header('Content-type: application/vnd.ms-excel');
			header("Content-Disposition: attachment; filename=\"Reporte_Contactos.xls\"");
			header("Pragma: no-cache");
			header("Expires: 0");
echo <<<html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
  <title>eClass</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
html;

			echo '<table border="1">'
			. '<tr>'
			. '<th>Id</th>'
			. '<th>Nombres</th>'
			. '<th>Apellidos</th>'
			. '<th>Email</th>'
			. '<th>Telefono</th>'
			. '<th>Celular</th>'
			. '<th>Direccion</th>'
			. '<th>Comuna</th>'
			. '<th>Region</th>'
			. '<th>Pais</th>'
			. '<th>Cargo</th>'
			. '<th>Empresa</th>'
			. '</tr>'
			;

			if (empty($contactos)) {
			echo '
			<tr>
				<td colspan="12" class="center">' . __('No se encontraron registros.', true) . '</td>
			</tr>';
			}
			else {
				foreach ($contactos as $contacto) {
					echo ' 
						<tr>
							<td class="center">' . $contacto['Contacto']['id'] . '</td>
							<td class="center">' . $contacto['Contacto']['nombres'] . '</td>
							<td class="center">' . $contacto['Contacto']['apellidos'] . '</td>
							<td class="center">' . $contacto['Contacto']['email'] . '</td>
							<td class="center">' . $contacto['Contacto']['telefono'] . '</td>
							<td class="center">' . $contacto['Contacto']['celular'] . '</td>
							<td class="center">' . $contacto['Contacto']['direccion'] . '</td>
							<td class="center">' . $contacto['Localidades']['nombre'] . '</td>
							<td class="center">' . $contacto['Regiones']['nombre'] . '</td>
							<td class="center">' . $contacto['Paises']['nombre'] . '</td>
							<td class="center">' . $contacto['Contacto']['cargo'] . '</td>
							<td class="center">' . $contacto['Contacto']['empresa'] . '</td>
					</tr>';
				}
			}
			echo '</table>';
echo <<<html
</body>
</html>
html;

	}
}
?>